 package com.SparkCore.RDD.Operator.Transform

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

import java.text.SimpleDateFormat


 /**
 *filter 将数据根据指定规则进行过滤，符合规则的数据保留，不符合的进行丢弃
  * 当数据进行筛选过滤后，分区不变，但是分区内数据可能不均衡，生产环境下可能会出现数据倾斜
  */
object Spark07_RDD_Operator_Transform_filter {

  def main(args: Array[String]): Unit = {

    //创建环境
    val sparkConf = new SparkConf().setMaster("local[*]").setAppName("RDD")
    val sparkContext = new SparkContext(sparkConf)

    //创建RDD算子 -- filter
    //选取所有的奇数
    val rdd = sparkContext.makeRDD(List(1, 2, 3, 4, 5, 6, 7))

    val filter: RDD[Int] = rdd.filter(num => num % 2 != 0)

    filter.collect().foreach(println)

    //关闭环境
    sparkContext.stop()
  }
 }
    
